package panda.query.scan;

import panda.query.struct.Attribute;
import panda.query.struct.Constant;

/**
 * 
 * @author Tian Yuan
 */
public interface Scanner {
	
	/**
	 * Initializes the scanner before the first tuple 
	 * to be read out
	 */
	public void init();
	
	/**
	 * 
	 */
	public void close();
	
	/**
	 * 
	 */
	public boolean next();
	
	/**
	 * 
	 */
	public Constant getValue(Attribute attr);
	
	/**
	 * 
	 */
	public boolean hasAttribute(Attribute name);
}
